home *** CD-ROM | disk | FTP | other *** search
- /*****************************************************************************
- **
- ** ShowLNX (c) 2002 by Michaî Pasiecznik (pasiussg@wp.pl).
- ** Program jest klasy freeware. O dokonywanych zmianach napisz w poniûszym
- ** úródle programu.
- **
- ** Autor : Michaî Pasiecznik
- ** Data : 14 lutego 2002
- ** Wersja : 0.7
- **
- ** Opis programu : Wyôwietla informacje o nagîówku pliku kartridûa
- ** .lnx, przeznaczonego dla emulatorów Atari Lynx.
- **
- *****************************************************************************/
-
- #include <stdio.h>
- #include <string.h>
-
- struct
- {
- unsigned char magic[4];
- unsigned char bank0a;
- unsigned char bank0b;
- unsigned char bank1a;
- unsigned char bank1b;
- unsigned char versiona;
- unsigned char versionb;
- unsigned char cartname[32];
- unsigned char manufname[16];
- unsigned char rotation;
- }header;
-
- int main(int argc, char *argv[])
- {
-
- FILE *plik;
- unsigned short bank0,bank1,version;
- unsigned int lenght;
-
- printf("\nShowLNX v0.7 by Michaî Pasiecznik (pasiussg@wp.pl)\n");
-
- if(argc==1)
- {
- printf("\nUûycie: ShowLNX nazwapliku[.lnx]\n\n");
- return(0);
- }
-
- if(argc>2)
- {
- printf("\nZîa liczba argumentów!\n\n");
- return(0);
- }
-
- if(strstr(argv[1],".lnx")==NULL)
- strcat(argv[1],".lnx");
-
- if((plik=fopen(argv[1],"rb"))==NULL)
- {
- printf("\nBrak pliku o takiej nazwie!\n\n");
- fclose(plik);
- return(0);
- }
-
- fread(&header,sizeof(header),1,plik);
-
- if(strcmp(header.magic,"LYNX")!=0)
- {
- printf("\nTo nie jest plik *.lnx!\n\n");
- return(0);
- }
-
- bank0=header.bank0b*256+header.bank0a;
- bank1=header.bank1b*256+header.bank1a;
- lenght=(bank0+bank1)*256;
- version=header.versionb*256+header.versiona;
-
- fclose(plik);
-
- printf("\nNazwa: %s",header.cartname);
- printf("\nFirma: %s",header.manufname);
- printf("\nDîugoôê: %d",lenght);
- printf("\nBank0: %d",bank0);
- printf("\nBank1: %d",bank1);
- printf("\nRotacja: ");
-
- if(header.rotation==0)
- printf("brak");
- else
- if(header.rotation==1)
- printf("w lewo");
- else
- if(header.rotation==2)
- printf("w prawo");
- else
- printf("???");
-
- printf("\nTyp: %s",header.magic);
- printf("\nWersja: %d\n\n",version);
-
- return(1);
-
- }
-